package cn.itrip.biz.service;

import cn.itrip.beans.dto.Dto;
import cn.itrip.beans.pojo.ItripHotelOrder;
import cn.itrip.beans.pojo.ItripHotelRoom;
import cn.itrip.beans.vo.CommentVo;
import cn.itrip.beans.vo.ItripHotelOrderExtend;
import cn.itrip.beans.vo.QueryComment;

import javax.servlet.http.HttpServletRequest;

public interface QueryHotelInfoService {

    /**
     * 获取评论列表
     * @param queryComment
     * @return
     */
    Dto getCommentList(QueryComment queryComment)throws  Exception;

    /**
     * 获取床型列表
     * @return
     */
    Dto queryHotelRoombed()throws  Exception;

    /**
     *获取出游类型列表
     * @return
     */
    Dto getTravelType()throws  Exception;

    /**
     * 获取酒店图片
     * @param id
     * @return
     */
    Dto getImg(String id)throws  Exception;

    /**
     * 获取评论数量
     * @param id
     * @return
     */
    Dto getCount(String id)throws  Exception;

    /**
     * 获取酒店评分
     * @param id
     * @return
     * @throws Exception
     */
    Dto getHotelScore(String id)throws  Exception;

    /**
     * 酒店介绍
     * @param id
     * @return
     * @throws Exception
     */
    Dto queryHotelDetails(String id)throws Exception;

    /**
     * 酒店设施
     * @param id
     * @return
     * @throws Exception
     */
    Dto queryHotelFacilities(String id)throws Exception;

    /**
     * 酒店政策
     * @param id
     * @return
     * @throws Exception
     */
    Dto queryHotelPolicy(String id)throws Exception;

    /**
     * 获取酒店评论以降序
     * @param id
     * @return
     * @throws Exception
     */
    Dto getHotelDesc(String id)throws Exception;

    Dto queryVideoDesc(String id)throws Exception;

    /**
     * 根据条件查询酒店房间
     * @param itripHotelRoom
     * @return
     * @throws Exception
     */
    Dto selectByQuery(ItripHotelRoom itripHotelRoom)throws Exception;

    /**
     * 获取评价图片
     * @param id
     * @return
     * @throws Exception
     */
    Dto getCommentImg(String id)throws Exception;

    /**
     * 根据酒店房型ID查 询酒店房型图片
     * @param id
     * @return
     * @throws Exception
     */
    Dto getHotelRoomImg(String id)throws Exception;

    /**
     * 获取预订单信息
     * @return
     * @throws Exception
     */
    Dto getPreorder(ItripHotelOrder itripHotelOrder)throws Exception;


    /**
     * 获取详细信息
     * @param orderid
     * @return
     */
    Dto queryOrderById(String orderid)throws  Exception;


    /**
     * 添加订单
     * @param itripHotelOrder
     * @param token
     * @return
     * @throws Exception
     */
    Dto addhotelorder(ItripHotelOrder itripHotelOrder,String token)throws  Exception;

    /**
     * 添加酒店评论
     * @param commentVo
     * @param request
     * @return
     */
    Dto addComment(CommentVo commentVo, HttpServletRequest request)throws  Exception;
}
